﻿using System;
using System.Collections.Generic;

namespace ControlCenter.Model.BizEntities
{
    /// <summary>
    /// 机器人待执行的应用包DTO
    /// </summary>
    public class WaitExecutionPackageDto
    {
        /// <summary>
        /// 机器人的应用ID
        /// </summary>
        public Guid RpId { get; set; }
        /// <summary>
        /// 待执行的包Id
        /// </summary>
        public Guid PackageId { get; set; }

        /// <summary>
        /// 包名称
        /// </summary>
        public string ProjectName { get; set; }

        /// <summary>
        /// 包版本号
        /// </summary>
        public string Version { get; set; }

        /// <summary>
        /// 执行周期名称
        /// </summary>
        public string ExecCycleName { get; set; }

        /// <summary>
        /// 执行周期表达式
        /// </summary>
        public string ExecCycleCron { get; set; }

        /// <summary>
        /// 序号
        /// </summary>
        public int Sequence { get; set; }

        /// <summary>
        /// 包状态
        /// </summary>
        public PackageStatus PackageStatus { get; set; }

        /// <summary>
        /// 包是否已安装
        /// </summary>
        public bool IsInstall { get; set; }

        /// <summary>
        /// 选项集合
        /// </summary>
        public List<KeyValuePair<string, string>> Options { get; set; }

        /// <summary>
        /// 构造函数
        /// </summary>
        public WaitExecutionPackageDto()
        {
            this.Options = new List<KeyValuePair<string, string>>();
        }
    }

    /// <summary>
    /// 包选项
    /// </summary>
    public class PackageOption
    {
        /// <summary>
        /// KEY
        /// </summary>
        public string Key { get; set; }
        /// <summary>
        /// VALUE
        /// </summary>
        public string Value { get; set; }
    }
}
